/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package LogicaNegocio.Biblioteca;

import LogicaNegocio.Usuarios.Usuario;
import java.util.Date;

/**
 * Esta clase en java define los atributos y caracteristicas
 * para las ordenes de prestamo.
 *
 * @author sebaxtian
 * Archivo: Orden.java
 * @version 1.0
 * Fecha: dom abr 11 01:23:23 COT 2010
 */


public class Orden {

    //Atributos de clase
    private int idOrden;
    private int identificacionUsuario;
    private int idEjemplar;
    private Date fecha;
    private Date hora;
    private boolean cancelada;
    private Usuario usuario;
    private Ejemplar ejemplar;

    /**
     * Crea una orden con atributos nulos.
     */
    public Orden() {
        this.idOrden = -1;
        this.identificacionUsuario = -1;
        this.idEjemplar = -1;
        this.fecha = null;
        this.hora = null;
        this.cancelada = false;
        this.usuario = null;
        this.ejemplar = null;
    }

    /**
     * Crea una orden con atributos definidos como argumentos.
     *
     * @param idOrden
     * @param identificacionUsuario
     * @param idEjemplar
     * @param fecha
     * @param hora
     * @param cancelada
     */
    public Orden(int idOrden, int identificacionUsuario, int idEjemplar, Date fecha, Date hora, boolean cancelada) {
        this.idOrden = idOrden;
        this.identificacionUsuario = identificacionUsuario;
        this.idEjemplar = idEjemplar;
        this.fecha = fecha;
        this.hora = hora;
        this.cancelada = cancelada;
        this.usuario = null;
        this.ejemplar = null;
    }

    /**
     * Obtiene el numero de orden.
     *
     * @return idOrden
     */
    public int getIdOrden() {
        return idOrden;
    }

    /**
     * Cambia el numero de orden.
     *
     * @param idOrden
     */
    public void setIdOrden(int idOrden) {
        this.idOrden = idOrden;
    }

    /**
     * Obtiene el numero de identificacion de usuario.
     *
     * @return identificacionUsuario
     */
    public int getIdentificacionUsuario() {
        return identificacionUsuario;
    }

    /**
     * Cambia el numero de identificacion de usuario.
     *
     * @param identificacionUsuario
     */
    public void setIdentificacionUsuario(int identificacionUsuario) {
        this.identificacionUsuario = identificacionUsuario;
    }

    /**
     * Obtiene el id del ejemplar.
     *
     * @return idEjemplar
     */
    public int getIdEjemplar() {
        return idEjemplar;
    }

    /**
     * Cambia el id del ejemplar.
     *
     * @param idEjemplar
     */
    public void setIdEjemplar(int idEjemplar) {
        this.idEjemplar = idEjemplar;
    }

    /**
     * Obtiene la fecha en que se genera la orden.
     *
     * @return fecha
     */
    public Date getFecha() {
        return fecha;
    }

    /**
     * Cambia la fecha en que se genera la orden.
     *
     * @param fecha
     */
    public void setFecha(Date fecha) {
        this.fecha = fecha;
    }

    /**
     * Obtiene la hora en que se genera la orden.
     *
     * @return hora
     */
    public Date getHora() {
        return hora;
    }

    /**
     * Cambia la hora en que se genera la orden.
     *
     * @param hora
     */
    public void setHora(Date hora) {
        this.hora = hora;
    }

    /**
     * Obtiene el estado de cancelacion de orden.
     * 
     * @return cancelada
     */
    public boolean getCancelada() {
        return cancelada;
    }

    /**
     * Cambia el estado de canccelacion de orden.
     *
     * @param cancelada
     */
    public void setCancelada(boolean cancelada) {
        this.cancelada = cancelada;
    }

    /**
     * Obtiene el usuario que solicita la orden.
     *
     * @return usuario
     */
    public Usuario getUsuario() {
        return usuario;
    }

    /**
     * Cambia el usuario que solicita la orden.
     *
     * @param usuario
     */
    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    /**
     * Obtiene el ejemplar que es solicitado en la orden.
     *
     * @return ejemplar
     */
    public Ejemplar getEjemplar() {
        return ejemplar;
    }

    /**
     * Cambia el ejemplar que es solicitado en la orden.
     *
     * @param ejemplar
     */
    public void setEjemplar(Ejemplar ejemplar) {
        this.ejemplar = ejemplar;
    }

}
